// TypeScript只允许类型断言转换为 更具体 或者 不太具体 的类型版本，此规则可防止不可能的强制转换：
// let el_img = document.querySelector(".img1") as HTMLImageElement;

// el_img.src = "jjj";

function printLength(message?: string) {
  // 非空断言使用的是 ! ，表示可以确定某个标识符是有值的，跳过ts在编译阶段对它的检测；
  console.log(message!.length);
}

function printLength1(message?: string) {
  // 它的作用是当对象的属性不存在时，会短路，直接返回undefined，如果存在，那么才会继续执行；
  console.log(message?.length);
}

printLength("jjj");
printLength1();

let obj: {
  username: string;
  age?: number;
} = {
  username: "456",
};

console.log(obj?.age);

export {};
